package net.yxsoft.bean;

import com.jfinal.kit.Kv;
import rapid.util.StrKit;

import java.util.List;

public class FnFormParams {

  private int stringValueSize = 0;
  private int listValueSize = 0;
  private String code;
  private int modificationnum;
  private String attr01;
  private String attr02;
  private String attr03;
  private String attr04;
  private String attr05;
  private String attr06;
  private String attr07;
  private String attr08;
  private String attr09;
  private String attr10;
  private String attr11;
  private String attr12;
  private String attr13;
  private String attr14;
  private String attr15;
  private String attr16;
  private String attr17;
  private String attr18;
  private String attr19;
  private String attr20;
  private String attr21;
  private String attr22;
  private String attr23;
  private String attr24;
  private String attr25;
  private String attr26;
  private String attr27;
  private String attr28;
  private String attr29;
  private String attr30;
  private String attr31;
  private String attr32;
  private String attr33;
  private String attr34;
  private String attr35;
  private String attr36;
  private String attr37;
  private String attr38;
  private String attr39;
  private String attr40;
  private String attr41;
  private String attr42;
  private String attr43;
  private String attr44;
  private String attr45;
  private String attr46;
  private String attr47;
  private String attr48;
  private String attr49;
  private String attr50;
  private String attr51;
  private String attr52;
  private String attr53;
  private String attr54;
  private String attr55;
  private String attr56;
  private String attr57;
  private String attr58;
  private String attr59;
  private String attr60;
  private String attr96;
  private String attr101;
  private String attr151;
  private String attr152;
  private String attr153;
  private String rowid;
  private List<String> attrStrs;
  private List<Integer> attrInts;
  private String createdby;


  public FnFormParams(){
  }

  public boolean isEmpty() {
    return this.stringValueSize + this.listValueSize == 0;
  }

  public String getCode() {
    return code;
  }

  public void setCode(String code) {
    this.propStringValueChanged(this.code, code);
    this.code = code;
  }

  public int getModificationnum() {
    return modificationnum;
  }

  public void setModificationnum(int modificationnum) {
    this.propIntValueChanged(this.modificationnum, modificationnum);
    this.modificationnum = modificationnum;
  }

  public String getCreatedby() {
    return this.createdby;
  }

  public void setCreatedby(String createdby) {
    this.propStringValueChanged(this.createdby, createdby);
    this.createdby = createdby;
  }


  public String getAttr01() {
    return this.attr01;
  }

  public void setAttr01(String attr01) {
    this.propStringValueChanged(this.attr01, attr01);
    this.attr01 = attr01;
  }

  public String getAttr02() {
    return this.attr02;
  }

  public void setAttr02(String attr02) {
    this.propStringValueChanged(this.attr02, attr02);
    this.attr02 = attr02;
  }


  public String getRowid() {
    return this.rowid;
  }

  public void setRowid(String rowid) {
    this.propStringValueChanged(this.rowid, rowid);
    this.rowid = rowid;
  }


  public String getAttr03() {
    return this.attr03;
  }

  public void setAttr03(String attr03) {
    this.propStringValueChanged(this.attr03, attr03);
    this.attr03 = attr03;
  }

  public String getAttr04() {
    return this.attr04;
  }

  public void setAttr04(String attr04) {
    this.propStringValueChanged(this.attr04, attr04);
    this.attr04 = attr04;
  }

  public String getAttr05() {
    return this.attr05;
  }

  public void setAttr05(String attr05) {
    this.propStringValueChanged(this.attr05, attr05);
    this.attr05 = attr05;
  }

  public String getAttr06() {
    return this.attr06;
  }

  public void setAttr06(String attr06) {
    this.propStringValueChanged(this.attr06, attr06);
    this.attr06 = attr06;
  }

  public String getAttr07() {
    return this.attr07;
  }

  public void setAttr07(String attr07) {
    this.propStringValueChanged(this.attr07, attr07);
    this.attr07 = attr07;
  }

  public String getAttr08() {
    return this.attr08;
  }

  public void setAttr08(String attr08) {
    this.propStringValueChanged(this.attr08, attr08);
    this.attr08 = attr08;
  }

  public String getAttr09() {
    return this.attr09;
  }

  public void setAttr09(String attr09) {
    this.propStringValueChanged(this.attr09, attr09);
    this.attr09 = attr09;
  }

  public String getAttr10() {
    return this.attr10;
  }

  public void setAttr10(String attr10) {
    this.propStringValueChanged(this.attr10, attr10);
    this.attr10 = attr10;
  }

  public String getAttr11() {
    return this.attr11;
  }

  public void setAttr11(String attr11) {
    this.propStringValueChanged(this.attr11, attr11);
    this.attr11 = attr11;
  }

  public String getAttr12() {
    return this.attr12;
  }

  public void setAttr12(String attr12) {
    this.propStringValueChanged(this.attr12, attr12);
    this.attr12 = attr12;
  }

  public String getAttr13() {
    return this.attr13;
  }

  public void setAttr13(String attr13) {
    this.propStringValueChanged(this.attr13, attr13);
    this.attr13 = attr13;
  }

  public String getAttr14() {
    return this.attr14;
  }

  public void setAttr14(String attr14) {
    this.propStringValueChanged(this.attr14, attr14);
    this.attr14 = attr14;
  }

  public String getAttr15() {
    return this.attr15;
  }

  public void setAttr15(String attr15) {
    this.propStringValueChanged(this.attr15, attr15);
    this.attr15 = attr15;
  }

  public String getAttr16() {
    return this.attr16;
  }

  public void setAttr16(String attr16) {
    this.propStringValueChanged(this.attr16, attr16);
    this.attr16 = attr16;
  }

  public String getAttr17() {
    return this.attr17;
  }

  public void setAttr17(String attr17) {
    this.propStringValueChanged(this.attr17, attr17);
    this.attr17 = attr17;
  }

  public String getAttr18() {
    return this.attr18;
  }

  public void setAttr18(String attr18) {
    this.propStringValueChanged(this.attr18, attr18);
    this.attr18 = attr18;
  }

  public String getAttr19() {
    return this.attr19;
  }

  public void setAttr19(String attr19) {
    this.propStringValueChanged(this.attr19, attr19);
    this.attr19 = attr19;
  }

  public String getAttr20() {
    return this.attr20;
  }

  public void setAttr20(String attr20) {
    this.propStringValueChanged(this.attr20, attr20);
    this.attr20 = attr20;
  }

  public void setAttr21(String attr21) {
    this.propStringValueChanged(this.attr21, attr21);
    this.attr21 = attr21;
  }

  public void setAttr22(String attr22) {
    this.propStringValueChanged(this.attr22, attr22);
    this.attr22 = attr22;
  }

  public void setAttr23(String attr23) {
    this.propStringValueChanged(this.attr23, attr23);
    this.attr23 = attr23;
  }

  public void setAttr24(String attr24) {
    this.propStringValueChanged(this.attr24, attr24);
    this.attr24 = attr24;
  }

  public void setAttr25(String attr25) {
    this.propStringValueChanged(this.attr25, attr25);
    this.attr25 = attr25;
  }

  public void setAttr26(String attr26) {
    this.propStringValueChanged(this.attr26, attr26);
    this.attr26 = attr26;
  }

  public void setAttr27(String attr27) {
    this.propStringValueChanged(this.attr27, attr27);
    this.attr27 = attr27;
  }

  public void setAttr28(String attr28) {
    this.propStringValueChanged(this.attr28, attr28);
    this.attr28 = attr28;
  }

  public void setAttr29(String attr29) {
    this.propStringValueChanged(this.attr29, attr29);
    this.attr29 = attr29;
  }

  public void setAttr30(String attr30) {
    this.propStringValueChanged(this.attr30, attr30);
    this.attr30 = attr30;
  }

  public void setAttr31(String attr31) {
    this.propStringValueChanged(this.attr31, attr31);
    this.attr31 = attr31;
  }

  public void setAttr32(String attr32) {
    this.propStringValueChanged(this.attr32, attr32);
    this.attr32 = attr32;
  }

  public void setAttr33(String attr33) {
    this.propStringValueChanged(this.attr33, attr33);
    this.attr33 = attr33;
  }

  public void setAttr34(String attr34) {
    this.propStringValueChanged(this.attr34, attr34);
    this.attr34 = attr34;
  }

  public void setAttr35(String attr35) {
    this.propStringValueChanged(this.attr35, attr35);
    this.attr35 = attr35;
  }

  public void setAttr36(String attr36) {
    this.propStringValueChanged(this.attr36, attr36);
    this.attr36 = attr36;
  }

  public void setAttr37(String attr37) {
    this.propStringValueChanged(this.attr37, attr37);
    this.attr37 = attr37;
  }

  public void setAttr38(String attr38) {
    this.propStringValueChanged(this.attr38, attr38);
    this.attr38 = attr38;
  }

  public void setAttr39(String attr39) {
    this.propStringValueChanged(this.attr39, attr39);
    this.attr39 = attr39;
  }

  public void setAttr40(String attr40) {
    this.propStringValueChanged(this.attr40, attr40);
    this.attr40 = attr40;
  }

  public void setAttr41(String attr41) {
    this.propStringValueChanged(this.attr41, attr41);
    this.attr41 = attr41;
  }

  public void setAttr42(String attr42) {
    this.propStringValueChanged(this.attr42, attr42);
    this.attr42 = attr42;
  }

  public void setAttr43(String attr43) {
    this.propStringValueChanged(this.attr43, attr43);
    this.attr43 = attr43;
  }

  public void setAttr44(String attr44) {
    this.propStringValueChanged(this.attr44, attr44);
    this.attr44 = attr44;
  }

  public void setAttr45(String attr45) {
    this.propStringValueChanged(this.attr45, attr45);
    this.attr45 = attr45;
  }

  public void setAttr46(String attr46) {
    this.propStringValueChanged(this.attr46, attr46);
    this.attr46 = attr46;
  }

  public void setAttr47(String attr47) {
    this.propStringValueChanged(this.attr47, attr47);
    this.attr47 = attr47;
  }

  public void setAttr48(String attr48) {
    this.propStringValueChanged(this.attr48, attr48);
    this.attr48 = attr48;
  }

  public void setAttr49(String attr49) {
    this.propStringValueChanged(this.attr49, attr49);
    this.attr49 = attr49;
  }

  public void setAttr50(String attr50) {
    this.propStringValueChanged(this.attr50, attr50);
    this.attr50 = attr50;
  }

  public void setAttr51(String attr51) {
    this.propStringValueChanged(this.attr51, attr51);
    this.attr51 = attr51;
  }

  public void setAttr52(String attr52) {
    this.propStringValueChanged(this.attr52, attr52);
    this.attr52 = attr52;
  }

  public void setAttr53(String attr53) {
    this.propStringValueChanged(this.attr53, attr53);
    this.attr53 = attr53;
  }

  public void setAttr54(String attr54) {
    this.propStringValueChanged(this.attr54, attr54);
    this.attr54 = attr54;
  }

  public void setAttr55(String attr55) {
    this.propStringValueChanged(this.attr55, attr55);
    this.attr55 = attr55;
  }

  public void setAttr56(String attr56) {
    this.propStringValueChanged(this.attr56, attr56);
    this.attr56 = attr56;
  }

  public void setAttr57(String attr57) {
    this.propStringValueChanged(this.attr57, attr57);
    this.attr57 = attr57;
  }

  public void setAttr58(String attr58) {
    this.propStringValueChanged(this.attr58, attr58);
    this.attr58 = attr58;
  }

  public void setAttr59(String attr59) {
    this.propStringValueChanged(this.attr59, attr59);
    this.attr59 = attr59;
  }

  public void setAttr60(String attr60) {
    this.propStringValueChanged(this.attr60, attr60);
    this.attr60 = attr60;
  }

  public String getAttr101() {
    return this.attr101;
  }

  public void setAttr101(String attr101) {
    this.propStringValueChanged(this.attr101, attr101);
    this.attr101 = attr101;
  }


  public String getAttr21() {
    return attr21;
  }

  public String getAttr22() {
    return attr22;
  }

  public String getAttr23() {
    return attr23;
  }

  public String getAttr24() {
    return attr24;
  }

  public String getAttr25() {
    return attr25;
  }

  public String getAttr26() {
    return attr26;
  }

  public String getAttr27() {
    return attr27;
  }

  public String getAttr28() {
    return attr28;
  }

  public String getAttr29() {
    return attr29;
  }

  public String getAttr30() {
    return attr30;
  }

  public String getAttr31() {
    return attr31;
  }

  public String getAttr32() {
    return attr32;
  }

  public String getAttr33() {
    return attr33;
  }

  public String getAttr34() {
    return attr34;
  }

  public String getAttr35() {
    return attr35;
  }

  public String getAttr36() {
    return attr36;
  }

  public String getAttr37() {
    return attr37;
  }

  public String getAttr38() {
    return attr38;
  }

  public String getAttr39() {
    return attr39;
  }

  public String getAttr40() {
    return attr40;
  }

  public String getAttr41() {
    return attr41;
  }

  public String getAttr42() {
    return attr42;
  }

  public String getAttr43() {
    return attr43;
  }

  public String getAttr44() {
    return attr44;
  }

  public String getAttr45() {
    return attr45;
  }

  public String getAttr46() {
    return attr46;
  }

  public String getAttr47() {
    return attr47;
  }

  public String getAttr48() {
    return attr48;
  }

  public String getAttr49() {
    return attr49;
  }

  public String getAttr50() {
    return attr50;
  }

  public String getAttr51() {
    return attr51;
  }

  public String getAttr52() {
    return attr52;
  }

  public String getAttr53() {
    return attr53;
  }

  public String getAttr54() {
    return attr54;
  }

  public String getAttr55() {
    return attr55;
  }

  public String getAttr56() {
    return attr56;
  }

  public String getAttr57() {
    return attr57;
  }

  public String getAttr58() {
    return attr58;
  }

  public String getAttr59() {
    return attr59;
  }

  public String getAttr60() {
    return attr60;
  }

  public String getAttr96() {
    return attr96;
  }
  public void setAttr96(String attr96) {
    this.propStringValueChanged(this.attr96, attr96);
    this.attr96 = attr96;
  }

  public void setAttr151(String attr151) {
    this.propStringValueChanged(this.attr151, attr151);
    this.attr151 = attr151;
  }

  public String getAttr151() {
    return attr151;
  }

  public void setAttr152(String attr152) {
    this.propStringValueChanged(this.attr152, attr152);
    this.attr152 = attr152;
  }

  public String getAttr152() {
    return attr152;
  }


  public void setAttr153(String attr153) {
    this.propStringValueChanged(this.attr153, attr153);
    this.attr153 = attr153;
  }

  public String getAttr153() {
    return attr153;
  }


  public List<String> getAttrStrs() {
    return this.attrStrs;
  }

  public void setAttrStrs(List<String> attrStrs) {
    this.propListChanged(this.attrStrs, attrStrs);
    this.attrStrs = attrStrs;
  }

  public List<Integer> getAttrInts() {
    return this.attrInts;
  }

  public void setAttrInts(List<Integer> attrInts) {
    this.propListChanged(this.attrInts, attrInts);
    this.attrInts = attrInts;
  }

  protected void propIntValueChanged(Integer oldValue, Integer newValue){
    boolean oldIsEmpty = oldValue == null;
    boolean newIsEmpty = newValue == null;

    if (oldIsEmpty && !newIsEmpty) {
      ++this.stringValueSize;
    } else if (!oldIsEmpty && newIsEmpty) {
      --this.stringValueSize;
    }
  }

  protected void propStringValueChanged(String oldValue, String newValue) {
    boolean oldIsEmpty = StrKit.isEmpty(oldValue);
    boolean newIsEmpty = StrKit.isEmpty(newValue);
    if (oldIsEmpty && !newIsEmpty) {
      ++this.stringValueSize;
    } else if (!oldIsEmpty && newIsEmpty) {
      --this.stringValueSize;
    }

  }

  protected void propListChanged(List oldValue, List newValue) {
    boolean oldIsEmpty = oldValue == null || oldValue.size() == 0;
    boolean newIsEmpty = newValue == null || newValue.size() == 0;
    if (oldIsEmpty && !newIsEmpty) {
      ++this.listValueSize;
    } else if (!oldIsEmpty && newIsEmpty) {
      --this.listValueSize;
    }

  }

  public Kv toKv() {
    return this.toKv("cond", (Kv)null);
  }

  public Kv toKv(Kv kv) {
    return this.toKv("cond", kv);
  }

  public Kv toKv(String paramName) {
    return Kv.by(paramName, (Object)null);
  }

  public Kv toKv(String paramName, Kv kv) {
    return kv == null ? Kv.by(paramName, this.isEmpty() ? null : this) : kv.set(paramName, this.isEmpty() ? null : this);
  }

}
